/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package wasolicitudesfiec.consultas.ayudantias;

import java.sql.Connection;
import java.sql.PreparedStatement;
import entidad.ayudantias.Configuracion;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Vector;

/**
 *
 * @author kabad
 */
public class ConsultasConfiguracion{
private Connection con;

public boolean HLeliminarConfiguracion(Configuracion val) throws SQLException{
return eliminarConfiguracion(val.getIdConfiguracion());
}

public void setConexion(Connection con) {
this.con=con;
}

public Configuracion nuevoConfiguracion(String descripcion, String nombre, String valor) throws SQLException{
Configuracion reg=new Configuracion();

        java.sql.PreparedStatement proc=con.prepareStatement(
"call nuevoConfiguracion(?,?) ");
proc.setString(1, descripcion);
proc.setString(2, nombre);
proc.setString(3, valor);

ResultSet rs=proc.executeQuery();
if (rs.next()) {
reg.setDescripcion(rs.getString(1));
reg.setIdConfiguracion(rs.getInt(2));
reg.setNombre(rs.getString(3));
reg.setValor(rs.getString(4));

}else reg=null;
return reg;


}

public Configuracion HLnuevoConfiguracion(Configuracion val) throws SQLException{
return nuevoConfiguracion(val.getDescripcion(), val.getNombre(), val.getValor());
}

public Configuracion leerConfiguracion(int idConfiguracion) throws SQLException{
Configuracion reg=new Configuracion();

PreparedStatement proc=con.prepareStatement(
"call leerConfiguracion(?) ");
proc.setInt(1, idConfiguracion);
ResultSet rs=proc.executeQuery();
if (rs.next()) {
reg.setDescripcion(rs.getString(1));
reg.setIdConfiguracion(rs.getInt(2));
reg.setNombre(rs.getString(3));
reg.setValor(rs.getString(4));
}else reg=null;
return reg;


}

public Configuracion leerConfiguracionPorNombre(String nombre) throws SQLException{
Configuracion reg=new Configuracion();

PreparedStatement proc=con.prepareStatement(
"call leerConfiguracionPorNombre(?) ");
proc.setString(1, nombre);
ResultSet rs=proc.executeQuery();
if (rs.next()) {
reg.setDescripcion(rs.getString(1));
reg.setIdConfiguracion(rs.getInt(2));
reg.setNombre(rs.getString(3));
reg.setValor(rs.getString(4));
}else reg=null;
return reg;


}

public Configuracion HLleerConfiguracion(Configuracion val) throws SQLException{
return leerConfiguracion(val.getIdConfiguracion());
}

public Vector<Configuracion> leerVariosConfiguracion() throws SQLException{
Vector<Configuracion> datos=new Vector<Configuracion>();
Configuracion reg;

PreparedStatement proc=con.prepareStatement(
"call leerVariosConfiguracion() ");
ResultSet rs=proc.executeQuery();
while (rs.next()) {
reg = new Configuracion();
reg.setDescripcion(rs.getString(1));
reg.setIdConfiguracion(rs.getInt(2));
reg.setNombre(rs.getString(3));
reg.setValor(rs.getString(4));
datos.add(reg);
}//end while
return datos;


}

public Vector<Configuracion> HLleerVariosConfiguracion(Configuracion val) throws SQLException{
return leerVariosConfiguracion();
}

public boolean modificarConfiguracion(String descripcion, int idConfiguracion, String nombre, String valor) throws SQLException{
boolean exitoOperacion = true;

PreparedStatement proc=con.prepareStatement(
"call modificarConfiguracion(?,?,?,?) ");
proc.setString(1, descripcion);
proc.setInt(2, idConfiguracion);
proc.setString(3, nombre);
proc.setString(4, valor);

proc.execute();
return exitoOperacion;


}

public boolean HLmodificarConfiguracion(Configuracion val) throws SQLException{
return modificarConfiguracion(val.getDescripcion(), val.getIdConfiguracion(), val.getNombre(), val.getValor());
}

public boolean eliminarConfiguracion(int idConfiguracion) throws SQLException{
boolean exitoOperacion = true;

PreparedStatement proc=con.prepareStatement(
"call eliminarConfiguracion(?) ");
proc.setInt(1, idConfiguracion);
proc.execute();
return exitoOperacion;


}


}// FIN CLASE: ConsultasConfiguracion
